use the unstable carryless_mul in the pclmul implementation#4862
use the unstable carryless_mul in the pclmul implementation#4862RalfJung merged 1 commit intorust-lang:masterfrom
carryless_mul in the pclmul implementation#4862Conversation
|
Thank you for contributing to Miri! A reviewer will take a look at your PR, typically within a week or two. |
|
CI uses |
|
It always the current rust nightly bootstrap compiler (the file storing that is here). If the job here fails, that means merging this PR would cause the next sync into the Rust repo to fail. |
|
The rust bootstrap compiler always gets updated around a release, so the next update will be around Feb 27th. It is a fundamental part of the rustc development process that new standard library features can only be used inside rustc/miri after the next bootstrap bump (when nightly becomes beta and then that beta becomes the bootstrap compiler). |
This comment has been minimized.
This comment has been minimized.
5b5c728 to
f4000f0
Compare
This comment has been minimized.
This comment has been minimized.
src/shims/x86/mod.rs
Outdated
|
|
||
| let dest = ecx.project_index(&dest, i)?; | ||
| ecx.write_scalar(Scalar::from_u128(result), &dest)?; | ||
| ecx.write_scalar(Scalar::from_u128(left.widening_carryless_mul(right)), &dest)?; |
There was a problem hiding this comment.
Please separately let-bind the result; currently it is easy to miss the main computation among all the other stuff.
|
Once rust-lang/rust#153462 lands, the next sync should make this PR work. |
f4000f0 to
248bc67
Compare
|
This PR was rebased onto a different master commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@rustbot ready |
|
Thanks! |
Eventually we should be able to use the intrinsics in
stdarchso that miri no longer needs a custom implementation. Unfortunately the required optimizations didn't make it into LLVM 22, so we'll have to wait ~6 months.